# 软件包名称
set(CPACK_PACKAGE_NAME "${PROJECT_NAME}" CACHE STRING "软件包的名称")

# 软件包版本号
set(CPACK_PACKAGE_VERSION_MAJOR 1)
set(CPACK_PACKAGE_VERSION_MINOR 0)
set(CPACK_PACKAGE_VERSION_PATCH 1)

# 软件包作者联系方式
set(CPACK_PACKAGE_CONTACT "zhxl<1633429208@qq.com>" CACHE STRING "软件包作者的联系方式")

# CPack生成软件包类型（还可以是其他包如 DEB <.7z> <.zip> 等）
set(CPACK_GENERATOR "DEB")
# 软件包适用的CPU架构(如"all"、"amd64"、"i386"等) amd64：适用于AMD64（也就是x86-64）架构的处理器
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64" CACHE STRING "软件包适用的CPU架构")

# 指定程序名，就是程序安装后的名称
set(CPACK_DEBIAN_PACKAGE_NAME "${PROJECT_NAME}" CACHE STRING "软件包安装后的程序名称")

# 软件包分类和管理
set(CPACK_DEBIAN_PACKAGE_SECTION "utils" CACHE STRING "软件包分类和管理")
# 软件包优先级 Priority`字段的可能值范围从0到5，**standard**（值为2）：中等优先级，普通的应用程序和工具
set(CPACK_DEBIAN_PACKAGE_PRIORITY "2" CACHE STRING "")

# 软件包内容和功能的简单描述
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "A Network Prober" CACHE STRING "软件包内容和功能的简单描述")
# 软件包维护人联系方式
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "zhxl<1633429208@qq.com>")

# 让dpkg-shlibdeps自动检测动态库依赖
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)

# 添加配置文件或自定义脚本的设置(指定文件名)，文件之间用;分隔
set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
        "${PROJECT_SOURCE_DIR}/debian/conffiles;${PROJECT_SOURCE_DIR}/debian/preinst;${PROJECT_SOURCE_DIR}/debian/postinst;${PROJECT_SOURCE_DIR}/debian/prerm;${PROJECT_SOURCE_DIR}/debian/postrm"
)

## 指定所需的依赖 它告诉软件包管理系统（如dpkg或apt），为了正常运行该软件包，需要先安装哪些其他软件包
#set(CPACK_DEBIAN_PACKAGE_DEPENDS
#    "libmysqlclient-dev,
#     libpq-dev,
#     unixodbc,
#     libodbc1,
#     libtdsodbc"
#        #    "libpcap-dev (= 1.10.1-4ubuntu1.22.04.1)" # 多个包用逗号隔开
#)

## 指定需要安装的文件
#install(
#    TARGETS
#        network_prober
#    RUNTIME DESTINATION /usr/bin     # 可执行文件安装路径
#    ARCHIVE DESTINATION /usr/lib/network_prober    # 静态库文件安装路径（.a/.lib） |
#    LIBRARY DESTINATION /usr/lib/network_prober    # 动态库文件安装路径(.so/.dll) | 通常，编译器只会在 </usr/lib> 和 </lib> 中找头文件，如果
#)

## 将配置文件拷贝到/etc/network_prober目录下
#install(
#    FILES
#        "${PROJECT_SOURCE_DIR}/conf/config.ini"
#    DESTINATION /etc/network_prober
#    PERMISSIONS OWNER_READ
#    COMPONENT etc
#)

#install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/1_http_packet.pcap"
#    DESTINATION /tmp
#    PERMISSIONS OWNER_READ
#    COMPONENT docs
#)

# 包含CPack打包脚本
include(CPack)




